main() {
  List<Map> goodList = [
    {"id": 1, "price": 22.68, "count": 3, "goods_name": "西瓜", "selectd": true},
    {"id": 2, "price": 11.99, "count": 3, "goods_name": "草莓", "selectd": true},
    {
      "id": 3,
      "price": 60.99,
      "count": 1,
      "goods_name": "车厘子",
      "selectd": false
    },
    {
      "id": 4,
      "price": 11.68,
      "count": 3,
      "goods_name": "平谷大桃",
      "selectd": false
    }
  ];
  // 1.计算总金额
  // double totalPrice = 0;
  // for (int i = 0; i < goodList.length; i++) {
  //   if (goodList[i]["selectd"]) {
  //     totalPrice += goodList[i]["price"] * goodList[i]["count"];
  //   }
  // }
  // print(totalPrice);

  // for (var item in goodList) {
  //   if (item["selectd"]) {
  //     totalPrice += item["price"] * item["count"];
  //   }
  // }
  // print(totalPrice);

  // goodList.forEach((item){
  //   if(item["selectd"]){
  //     totalPrice += item["price"] * item["count"];
  //   }

  // });
  // print(totalPrice);

//   List<num> list = [1, 2, 3, 4, 5];
//   num total = list.reduce((value, element) {
//     return value + element;
//   });
//   print(total);
// }


// double totalPrice = goodList.fold(0, (value,item){
//   if(item['selectd']){
//     return value + item['price'] * item['count'];

//   }
//   return value;
// });
// print(totalPrice);

List<Map> selectedList =goodList.where((item)=>item['selectd']).toList();
  print('6.1.选中的商品个数：${selectedList.length}');
  // 6.2 计算选中商品的总价格    fold -> reduce
  double totalPrice = selectedList.fold(
      0, (value, item) => value + item['price'] * item['count']);
  print('6.2.选中商品的总金额为：${totalPrice.toStringAsFixed(2)}');
 }